1. Field of the Invention
The present invention pertains to the field of integrated circuit testing. More particularly, this invention relates to an integrated circuit having circuitry that provides a self-test function.
2. Background
Integrated circuit devices such as random access memories (RAMs) typically undergo device verification testing during manufacture. Typically, such verification tests are designed to detect both static and dynamic defects in such a memory array. Such static defects include, for example, open circuit and short circuit defects in the integrated circuit device. Dynamic defects include defects such as weak pull-up or pull-down transistors that create timing sensitive defects in such a memory array.
A specialized integrated circuit device tester is normally employed to perform manufacturing verification tests. For example, such a integrated circuit device tester may be used to perform read/write verification cycle tests on the memory array. Relatively low speed (e.g., 20 MHz), low cost integrated circuit device testers are usually sufficient for detecting static defects in the memory array. However, extremely expensive integrated device testers are needed to detect dynamic defects in very high speed memory arrays. Unfortunately, such expensive high speed integrated circuit testers increase the overall manufacturing costs for such devices. In addition, for integrated circuit devices that provide large memory arrays, the cycle time required to perform such read/write tests increases in proportion to the size of the array.
Attempts to overcome some of the difficulties associated with testing integrated circuit devices have included implementing built-in self-test (BIST) circuitry. For example, an integrated circuit cache memory array may contain circuitry to perform a 13N March pattern on the memory array. (See Appendix 1 for details about the 13N March pattern.) A state machine is typically used to generate the 13N March pattern along with circuitry to sample data output and to generate a signature of the results. The signature is then compared against an expected value to determine whether defects exist in the memory array. Such BIST circuitry usually enables high speed testing while obviating expensive high speed testers.
Unfortunately, past BIST routines have only been able to apply a preprogrammed test sequence on the memory array. As the process of manufacturing such a memory array evolves, manufacturing test engineers typically develop improved strategies for detecting both static and dynamic defects in the memory array. Unfortunately, such improved strategies for detecting defects can only be applied to testing that occurs while the device is placed in an expensive integrated circuit device tester. Up until now, engineers have been unable to achieve the benefits of improved test strategies without the use of an expensive tester, or by redesigning the integrated circuit device.